package oop2;

public class JavaStudent {
	private String name;
	private int java;
	private int music;

	// 无参
	public JavaStudent() {

	}

	// 给java成绩和music成绩赋值
	public JavaStudent(int j, int m) {
		// java = j;
		// music = m;
		// JavaStudent(null,m,n);有错，不能这样调用构造方法
		// this调用别的构造方法，this必须在第一行
		this(null, j, m);
		System.out.println("这是一个赋值java和music成绩的构造方法");
	}

	// 给姓名和java成绩赋值
	public JavaStudent(String n, int j) {
		name = n;
		java = j;
	}

	// 给姓名和音乐成绩赋值,有错误，和上 一个重复了
	// public JavaStudent(String n, int m) {
	// name = n;
	// music = m;
	// }
	public JavaStudent(int m, String n) {
		name = n;
		music = m;

	}

	// this表示当前对象
	public JavaStudent(String name, int java, int music) {
		System.out.println("三个参数的构造方法：");
		this.name = name;
		if (java < 0 || java > 100) {
			System.out.println("这个java成绩有错误，必须在0-100之间");
		} else {
			this.java = java;
		}
		if (music < 0 || music > 100) {
			System.out.println("音乐成绩有误");
		} else
			this.music = music;

		// 打印出对象的信息
		this.show();

	}

	public void show() {
		System.out.printf("这个同学 %s,java成绩%d,音乐成绩：%d \n", name, java, music);
	}
}